package compiler.antlr.helloworld;//coding\src\main\java\compiler\antlr\helloworld\Alex.g4 by ANTLR 4.5.3
import org.antlr.v4.runtime.tree.ParseTreeListener;

/**
 * This interface defines a complete listener for a parse tree produced by
 * {@link AlexParser}.
 */
public interface AlexListener extends ParseTreeListener {
	/**
	 * Enter a parse tree produced by {@link AlexParser#prog}.
	 * @param ctx the parse tree
	 */
	void enterProg(AlexParser.ProgContext ctx);
	/**
	 * Exit a parse tree produced by {@link AlexParser#prog}.
	 * @param ctx the parse tree
	 */
	void exitProg(AlexParser.ProgContext ctx);
	/**
	 * Enter a parse tree produced by {@link AlexParser#statment}.
	 * @param ctx the parse tree
	 */
	void enterStatment(AlexParser.StatmentContext ctx);
	/**
	 * Exit a parse tree produced by {@link AlexParser#statment}.
	 * @param ctx the parse tree
	 */
	void exitStatment(AlexParser.StatmentContext ctx);
	/**
	 * Enter a parse tree produced by {@link AlexParser#assignStatment}.
	 * @param ctx the parse tree
	 */
	void enterAssignStatment(AlexParser.AssignStatmentContext ctx);
	/**
	 * Exit a parse tree produced by {@link AlexParser#assignStatment}.
	 * @param ctx the parse tree
	 */
	void exitAssignStatment(AlexParser.AssignStatmentContext ctx);
	/**
	 * Enter a parse tree produced by {@link AlexParser#ifStatment}.
	 * @param ctx the parse tree
	 */
	void enterIfStatment(AlexParser.IfStatmentContext ctx);
	/**
	 * Exit a parse tree produced by {@link AlexParser#ifStatment}.
	 * @param ctx the parse tree
	 */
	void exitIfStatment(AlexParser.IfStatmentContext ctx);
	/**
	 * Enter a parse tree produced by {@link AlexParser#functionInvokStatment}.
	 * @param ctx the parse tree
	 */
	void enterFunctionInvokStatment(AlexParser.FunctionInvokStatmentContext ctx);
	/**
	 * Exit a parse tree produced by {@link AlexParser#functionInvokStatment}.
	 * @param ctx the parse tree
	 */
	void exitFunctionInvokStatment(AlexParser.FunctionInvokStatmentContext ctx);
	/**
	 * Enter a parse tree produced by {@link AlexParser#forStatment}.
	 * @param ctx the parse tree
	 */
	void enterForStatment(AlexParser.ForStatmentContext ctx);
	/**
	 * Exit a parse tree produced by {@link AlexParser#forStatment}.
	 * @param ctx the parse tree
	 */
	void exitForStatment(AlexParser.ForStatmentContext ctx);
	/**
	 * Enter a parse tree produced by {@link AlexParser#expression}.
	 * @param ctx the parse tree
	 */
	void enterExpression(AlexParser.ExpressionContext ctx);
	/**
	 * Exit a parse tree produced by {@link AlexParser#expression}.
	 * @param ctx the parse tree
	 */
	void exitExpression(AlexParser.ExpressionContext ctx);
	/**
	 * Enter a parse tree produced by {@link AlexParser#functionDecl}.
	 * @param ctx the parse tree
	 */
	void enterFunctionDecl(AlexParser.FunctionDeclContext ctx);
	/**
	 * Exit a parse tree produced by {@link AlexParser#functionDecl}.
	 * @param ctx the parse tree
	 */
	void exitFunctionDecl(AlexParser.FunctionDeclContext ctx);
}